package com.ufcg.lvc.client.MyListGrids;

import java.util.List;

import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.ufcg.lvc.client.GreetingServiceCRUDAsync;
import com.ufcg.lvc.client.UserData;
import com.ufcg.lvc.client.Datas.ModelosDeProvaData;

/**
 * 
 * @author Larissa Costa
 *
 */
public class ModelosDeProvaListGrid extends MyListGrid {
	UserData UD;
	
	public ModelosDeProvaListGrid(GreetingServiceCRUDAsync servico, UserData uD) {
		super();
		UD = uD;		
		String[] camposModelos = { "titulo", "assunto", "comentario"};
		String[] titulosModelos = { "Título", "Assunto", "Comentário"};

		this.setCampos(camposModelos);
		this.setTitulos(titulosModelos);
		this.setServico(servico);
		
		this.addColunas(campos, titulos);
		this.loadDados(UD);
	}

	public void loadDados(UserData uD) {
		UD = uD;
		
		final AsyncCallback<List<List<String>>> callback = new AsyncCallback<List<List<String>>>() {
			@Override
			public void onFailure(Throwable caught) {
				Window.alert("Erro ao carregar modelos de prova");
				System.out.println("Erro ao carregar modelos de prova");
			}
			@Override
			public void onSuccess(List<List<String>> result) {
				setData(ModelosDeProvaData.getRecords(result.get(0), result.get(1), result.get(2)));
			}
		};
		this.getServico().getModelosDeProva(UD.getId_usuario(), callback);
		
	}
}
